/**
 * Utils.java
 * 23 mai 2010 15:43:50
 * Copyright Julien 2010
 */
package fr.jbrunet.win.ndriveconnector.utils;

import java.io.File;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

import org.apache.log4j.Logger;

import fr.jbrunet.logger.JLog;

/**
 * @author Julien
 *
 */
public class Utils {

	private static final Logger log = JLog.getLogger(Utils.class);
	
	public static List<String> getAvailableDriveLetters() {
		List<String> letters = new ArrayList<String>();

		//first let's get all avilable drive letters
		for (int i = 'A'; i <= 'Z'; i++)
			letters.add(new String(new char[] { (char)i }));

		File[] roots = File.listRoots();
		for(int i=0;i<roots.length;i++) {
			String letter = new String(new char[] { ((File)roots[i]).getAbsolutePath().charAt(0) });
			if(letters.indexOf( letter ) != -1) {
				letters.remove( letters.indexOf( letter ));
			} else {
				log.error("Le lecteur : " + letter + " n'est plus dans liste" );
			}
		}
		

		Collections.sort(letters);
		
	    //return the letters left
	    return letters;
	}
}
